# This CMakeLists file is for usage with CLion (and maybe other) IDEs ONLY. Do NOT attempt to build the project with
# CMake as it will fail (kernel build process is tailored for Makefile while CLion's support for Makefile is... meh)

cmake_minimum_required(VERSION 3.0)
project(redpill C)

set(CMAKE_C_STANDARD 11)
include_directories(compat/toolkit/include)

add_definitions(-DLINUX_VERSION_CODE=199273)
include_directories(../linux-3.10.x-bromolow-25426/include)
include_directories(../linux-3.10.x-bromolow-25426/arch/x86/include)
include_directories(../linux-3.10.x-bromolow-25426/arch/x86/include/uapi)
add_definitions(-DCONFIG_SYNO_X86_SERIAL_PORT_SWAP)

#add_definitions(-DLINUX_VERSION_CODE=263227)
#include_directories(../linux-4.4.x-apollolake-25426/include)
#include_directories(../linux-4.4.x-apollolake-25426/arch/x86/include)
#include_directories(../linux-4.4.x-apollolake-25426/arch/x86/include/uapi)

# Custom options in our makefile
add_definitions(-DDBG_EXECVE)

# RP custom definitions
add_definitions(-DRP_MODULE_TARGET_VER=6)

# Generic options
add_definitions(-D__KERNEL__)
add_definitions(-DMODULE)
add_definitions(-DKBUILD_MODNAME=\"dummy\")

# bromolow + bromowell ones (minus CONFIG_SYNO_* which are replaced with "MY_ABC_HERE" in the kernel anyway)
add_definitions(-DCONFIG_64BIT)
add_definitions(-DCONFIG_X86_64)
add_definitions(-DCONFIG_X86)
add_definitions(-DCONFIG_INSTRUCTION_DECODER)
add_definitions(-DCONFIG_LOCKDEP_SUPPORT)
add_definitions(-DCONFIG_STACKTRACE_SUPPORT)
add_definitions(-DCONFIG_HAVE_LATENCYTOP_SUPPORT)
add_definitions(-DCONFIG_MMU)
add_definitions(-DCONFIG_NEED_DMA_MAP_STATE)
add_definitions(-DCONFIG_NEED_SG_DMA_LENGTH)
add_definitions(-DCONFIG_GENERIC_ISA_DMA)
add_definitions(-DCONFIG_GENERIC_BUG)
add_definitions(-DCONFIG_GENERIC_BUG_RELATIVE_POINTERS)
add_definitions(-DCONFIG_GENERIC_HWEIGHT)
add_definitions(-DCONFIG_ARCH_MAY_HAVE_PC_FDC)
add_definitions(-DCONFIG_RWSEM_XCHGADD_ALGORITHM)
add_definitions(-DCONFIG_GENERIC_CALIBRATE_DELAY)
add_definitions(-DCONFIG_ARCH_HAS_CPU_RELAX)
add_definitions(-DCONFIG_ARCH_HAS_CACHE_LINE_SIZE)
add_definitions(-DCONFIG_ARCH_HAS_CPU_AUTOPROBE)
add_definitions(-DCONFIG_HAVE_SETUP_PER_CPU_AREA)
add_definitions(-DCONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK)
add_definitions(-DCONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK)
add_definitions(-DCONFIG_ARCH_HIBERNATION_POSSIBLE)
add_definitions(-DCONFIG_ARCH_SUSPEND_POSSIBLE)
add_definitions(-DCONFIG_ZONE_DMA32)
add_definitions(-DCONFIG_AUDIT_ARCH)
add_definitions(-DCONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING)
add_definitions(-DCONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC)
add_definitions(-DCONFIG_HAVE_INTEL_TXT)
add_definitions(-DCONFIG_X86_64_SMP)
add_definitions(-DCONFIG_X86_HT)
add_definitions(-DCONFIG_ARCH_CPU_PROBE_RELEASE)
add_definitions(-DCONFIG_ARCH_SUPPORTS_UPROBES)
add_definitions(-DCONFIG_IRQ_WORK)
add_definitions(-DCONFIG_BUILDTIME_EXTABLE_SORT)
add_definitions(-DCONFIG_HAVE_KERNEL_GZIP)
add_definitions(-DCONFIG_HAVE_KERNEL_BZIP2)
add_definitions(-DCONFIG_HAVE_KERNEL_LZMA)
add_definitions(-DCONFIG_HAVE_KERNEL_XZ)
add_definitions(-DCONFIG_HAVE_KERNEL_LZO)
add_definitions(-DCONFIG_KERNEL_LZMA)
add_definitions(-DCONFIG_SWAP)
add_definitions(-DCONFIG_SYSVIPC)
add_definitions(-DCONFIG_SYSVIPC_SYSCTL)
add_definitions(-DCONFIG_POSIX_MQUEUE)
add_definitions(-DCONFIG_POSIX_MQUEUE_SYSCTL)
add_definitions(-DCONFIG_AUDIT)
add_definitions(-DCONFIG_HAVE_GENERIC_HARDIRQS)
add_definitions(-DCONFIG_GENERIC_HARDIRQS)
add_definitions(-DCONFIG_GENERIC_IRQ_PROBE)
add_definitions(-DCONFIG_GENERIC_IRQ_SHOW)
add_definitions(-DCONFIG_GENERIC_PENDING_IRQ)
add_definitions(-DCONFIG_IRQ_DOMAIN)
add_definitions(-DCONFIG_IRQ_FORCED_THREADING)
add_definitions(-DCONFIG_SPARSE_IRQ)
add_definitions(-DCONFIG_CLOCKSOURCE_WATCHDOG)
add_definitions(-DCONFIG_ARCH_CLOCKSOURCE_DATA)
add_definitions(-DCONFIG_GENERIC_TIME_VSYSCALL)
add_definitions(-DCONFIG_GENERIC_CLOCKEVENTS)
add_definitions(-DCONFIG_GENERIC_CLOCKEVENTS_BUILD)
add_definitions(-DCONFIG_GENERIC_CLOCKEVENTS_BROADCAST)
add_definitions(-DCONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST)
add_definitions(-DCONFIG_GENERIC_CMOS_UPDATE)
add_definitions(-DCONFIG_TICK_ONESHOT)
add_definitions(-DCONFIG_NO_HZ_COMMON)
add_definitions(-DCONFIG_NO_HZ_IDLE)
add_definitions(-DCONFIG_NO_HZ)
add_definitions(-DCONFIG_HIGH_RES_TIMERS)
add_definitions(-DCONFIG_TICK_CPU_ACCOUNTING)
add_definitions(-DCONFIG_TASKSTATS)
add_definitions(-DCONFIG_TASK_DELAY_ACCT)
add_definitions(-DCONFIG_TASK_XACCT)
add_definitions(-DCONFIG_TASK_IO_ACCOUNTING)
add_definitions(-DCONFIG_TREE_RCU)
add_definitions(-DCONFIG_RCU_STALL_COMMON)
add_definitions(-DCONFIG_RCU_FAST_NO_HZ)
add_definitions(-DCONFIG_HAVE_UNSTABLE_SCHED_CLOCK)
add_definitions(-DCONFIG_ARCH_SUPPORTS_NUMA_BALANCING)
add_definitions(-DCONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE)
add_definitions(-DCONFIG_CGROUPS)
add_definitions(-DCONFIG_CGROUP_FREEZER)
add_definitions(-DCONFIG_CGROUP_DEVICE)
add_definitions(-DCONFIG_CPUSETS)
add_definitions(-DCONFIG_CGROUP_CPUACCT)
add_definitions(-DCONFIG_RESOURCE_COUNTERS)
add_definitions(-DCONFIG_MEMCG)
add_definitions(-DCONFIG_MEMCG_SWAP)
add_definitions(-DCONFIG_MEMCG_SWAP_ENABLED)
add_definitions(-DCONFIG_CGROUP_SCHED)
add_definitions(-DCONFIG_FAIR_GROUP_SCHED)
add_definitions(-DCONFIG_BLK_CGROUP)
add_definitions(-DCONFIG_NAMESPACES)
add_definitions(-DCONFIG_UTS_NS)
add_definitions(-DCONFIG_IPC_NS)
add_definitions(-DCONFIG_PID_NS)
add_definitions(-DCONFIG_NET_NS)
add_definitions(-DCONFIG_UIDGID_CONVERTED)
add_definitions(-DCONFIG_MM_OWNER)
add_definitions(-DCONFIG_BLK_DEV_INITRD)
add_definitions(-DCONFIG_RD_GZIP)
add_definitions(-DCONFIG_RD_LZMA)
add_definitions(-DCONFIG_SYSCTL)
add_definitions(-DCONFIG_ANON_INODES)
add_definitions(-DCONFIG_HAVE_UID16)
add_definitions(-DCONFIG_SYSCTL_EXCEPTION_TRACE)
add_definitions(-DCONFIG_HOTPLUG)
add_definitions(-DCONFIG_HAVE_PCSPKR_PLATFORM)
add_definitions(-DCONFIG_EXPERT)
add_definitions(-DCONFIG_UID16)
add_definitions(-DCONFIG_SYSCTL_SYSCALL)
add_definitions(-DCONFIG_KALLSYMS)
add_definitions(-DCONFIG_PRINTK)
add_definitions(-DCONFIG_BUG)
add_definitions(-DCONFIG_ELF_CORE)
add_definitions(-DCONFIG_BASE_FULL)
add_definitions(-DCONFIG_FUTEX)
add_definitions(-DCONFIG_EPOLL)
add_definitions(-DCONFIG_SIGNALFD)
add_definitions(-DCONFIG_TIMERFD)
add_definitions(-DCONFIG_EVENTFD)
add_definitions(-DCONFIG_SHMEM)
add_definitions(-DCONFIG_AIO)
add_definitions(-DCONFIG_PCI_QUIRKS)
add_definitions(-DCONFIG_EMBEDDED)
add_definitions(-DCONFIG_HAVE_PERF_EVENTS)
add_definitions(-DCONFIG_PERF_EVENTS)
add_definitions(-DCONFIG_VM_EVENT_COUNTERS)
add_definitions(-DCONFIG_SLAB)
add_definitions(-DCONFIG_HAVE_OPROFILE)
add_definitions(-DCONFIG_OPROFILE_NMI_TIMER)
add_definitions(-DCONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS)
add_definitions(-DCONFIG_ARCH_USE_BUILTIN_BSWAP)
add_definitions(-DCONFIG_USER_RETURN_NOTIFIER)
add_definitions(-DCONFIG_HAVE_IOREMAP_PROT)
add_definitions(-DCONFIG_HAVE_KPROBES)
add_definitions(-DCONFIG_HAVE_KRETPROBES)
add_definitions(-DCONFIG_HAVE_OPTPROBES)
add_definitions(-DCONFIG_HAVE_KPROBES_ON_FTRACE)
add_definitions(-DCONFIG_HAVE_ARCH_TRACEHOOK)
add_definitions(-DCONFIG_HAVE_DMA_ATTRS)
add_definitions(-DCONFIG_USE_GENERIC_SMP_HELPERS)
add_definitions(-DCONFIG_GENERIC_SMP_IDLE_THREAD)
add_definitions(-DCONFIG_HAVE_REGS_AND_STACK_ACCESS_API)
add_definitions(-DCONFIG_HAVE_DMA_API_DEBUG)
add_definitions(-DCONFIG_HAVE_HW_BREAKPOINT)
add_definitions(-DCONFIG_HAVE_MIXED_BREAKPOINTS_REGS)
add_definitions(-DCONFIG_HAVE_USER_RETURN_NOTIFIER)
add_definitions(-DCONFIG_HAVE_PERF_EVENTS_NMI)
add_definitions(-DCONFIG_HAVE_PERF_REGS)
add_definitions(-DCONFIG_HAVE_PERF_USER_STACK_DUMP)
add_definitions(-DCONFIG_HAVE_ARCH_JUMP_LABEL)
add_definitions(-DCONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG)
add_definitions(-DCONFIG_HAVE_CMPXCHG_LOCAL)
add_definitions(-DCONFIG_HAVE_CMPXCHG_DOUBLE)
add_definitions(-DCONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION)
add_definitions(-DCONFIG_ARCH_WANT_OLD_COMPAT_IPC)
add_definitions(-DCONFIG_HAVE_ARCH_SECCOMP_FILTER)
add_definitions(-DCONFIG_HAVE_CONTEXT_TRACKING)
add_definitions(-DCONFIG_HAVE_IRQ_TIME_ACCOUNTING)
add_definitions(-DCONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE)
add_definitions(-DCONFIG_MODULES_USE_ELF_RELA)
add_definitions(-DCONFIG_OLD_SIGSUSPEND3)
add_definitions(-DCONFIG_COMPAT_OLD_SIGACTION)
add_definitions(-DCONFIG_SLABINFO)
add_definitions(-DCONFIG_RT_MUTEXES)
add_definitions(-DCONFIG_MODULES)
add_definitions(-DCONFIG_MODULE_UNLOAD)
add_definitions(-DCONFIG_X86_X2APIC) # broadwell only
add_definitions(-DCONFIG_MODULE_FORCE_UNLOAD)
add_definitions(-DCONFIG_MODULE_SIG)
add_definitions(-DCONFIG_MODULE_SIG_SHA384)
add_definitions(-DCONFIG_STOP_MACHINE)
add_definitions(-DCONFIG_BLOCK)
add_definitions(-DCONFIG_BLK_DEV_BSG)
add_definitions(-DCONFIG_BLK_DEV_BSGLIB)
add_definitions(-DCONFIG_BLK_DEV_INTEGRITY)
add_definitions(-DCONFIG_PARTITION_ADVANCED)
add_definitions(-DCONFIG_MAC_PARTITION)
add_definitions(-DCONFIG_MSDOS_PARTITION)
add_definitions(-DCONFIG_EFI_PARTITION)
add_definitions(-DCONFIG_BLOCK_COMPAT)
add_definitions(-DCONFIG_IOSCHED_NOOP)
add_definitions(-DCONFIG_IOSCHED_DEADLINE)
add_definitions(-DCONFIG_IOSCHED_CFQ)
add_definitions(-DCONFIG_DEFAULT_CFQ)
add_definitions(-DCONFIG_PREEMPT_NOTIFIERS)
add_definitions(-DCONFIG_ASN1)
add_definitions(-DCONFIG_INLINE_SPIN_UNLOCK_IRQ)
add_definitions(-DCONFIG_INLINE_READ_UNLOCK)
add_definitions(-DCONFIG_INLINE_READ_UNLOCK_IRQ)
add_definitions(-DCONFIG_INLINE_WRITE_UNLOCK)
add_definitions(-DCONFIG_INLINE_WRITE_UNLOCK_IRQ)
add_definitions(-DCONFIG_ARCH_SUPPORTS_ATOMIC_RMW)
add_definitions(-DCONFIG_MUTEX_SPIN_ON_OWNER)
add_definitions(-DCONFIG_FREEZER)
add_definitions(-DCONFIG_ZONE_DMA)
add_definitions(-DCONFIG_SMP)
add_definitions(-DCONFIG_X86_MPPARSE)
add_definitions(-DCONFIG_RETPOLINE)
add_definitions(-DCONFIG_X86_SUPPORTS_MEMORY_FAILURE)
add_definitions(-DCONFIG_NO_BOOTMEM)
add_definitions(-DCONFIG_GENERIC_CPU)
add_definitions(-DCONFIG_X86_TSC)
add_definitions(-DCONFIG_X86_CMPXCHG64)
add_definitions(-DCONFIG_X86_CMOV)
add_definitions(-DCONFIG_X86_DEBUGCTLMSR)
add_definitions(-DCONFIG_PROCESSOR_SELECT)
add_definitions(-DCONFIG_CPU_SUP_INTEL)
add_definitions(-DCONFIG_HPET_TIMER)
add_definitions(-DCONFIG_HPET_EMULATE_RTC)
add_definitions(-DCONFIG_DMI)
add_definitions(-DCONFIG_SWIOTLB)
add_definitions(-DCONFIG_IOMMU_HELPER)
add_definitions(-DCONFIG_SCHED_SMT)
add_definitions(-DCONFIG_SCHED_MC)
add_definitions(-DCONFIG_PREEMPT_NONE)
add_definitions(-DCONFIG_X86_LOCAL_APIC)
add_definitions(-DCONFIG_X86_IO_APIC)
add_definitions(-DCONFIG_X86_MCE)
add_definitions(-DCONFIG_X86_MCE_INTEL)
add_definitions(-DCONFIG_X86_MCE_THRESHOLD)
add_definitions(-DCONFIG_X86_THERMAL_VECTOR)
add_definitions(-DCONFIG_X86_MSR)
add_definitions(-DCONFIG_X86_CPUID)
add_definitions(-DCONFIG_ARCH_PHYS_ADDR_T_64BIT)
add_definitions(-DCONFIG_ARCH_DMA_ADDR_T_64BIT)
add_definitions(-DCONFIG_DIRECT_GBPAGES)
add_definitions(-DCONFIG_ARCH_SPARSEMEM_ENABLE)
add_definitions(-DCONFIG_ARCH_SPARSEMEM_DEFAULT)
add_definitions(-DCONFIG_ARCH_SELECT_MEMORY_MODEL)
add_definitions(-DCONFIG_ARCH_PROC_KCORE_TEXT)
add_definitions(-DCONFIG_SELECT_MEMORY_MODEL)
add_definitions(-DCONFIG_SPARSEMEM_MANUAL)
add_definitions(-DCONFIG_SPARSEMEM)
add_definitions(-DCONFIG_HAVE_MEMORY_PRESENT)
add_definitions(-DCONFIG_SPARSEMEM_EXTREME)
add_definitions(-DCONFIG_SPARSEMEM_VMEMMAP_ENABLE)
add_definitions(-DCONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER)
add_definitions(-DCONFIG_SPARSEMEM_VMEMMAP)
add_definitions(-DCONFIG_HAVE_MEMBLOCK)
add_definitions(-DCONFIG_HAVE_MEMBLOCK_NODE_MAP)
add_definitions(-DCONFIG_ARCH_DISCARD_MEMBLOCK)
add_definitions(-DCONFIG_PAGEFLAGS_EXTENDED)
add_definitions(-DCONFIG_COMPACTION)
add_definitions(-DCONFIG_MIGRATION)
add_definitions(-DCONFIG_PHYS_ADDR_T_64BIT)
add_definitions(-DCONFIG_BOUNCE)
add_definitions(-DCONFIG_NEED_BOUNCE_POOL)
add_definitions(-DCONFIG_VIRT_TO_BUS)
add_definitions(-DCONFIG_MMU_NOTIFIER)
add_definitions(-DCONFIG_KSM)
add_definitions(-DCONFIG_ARCH_SUPPORTS_MEMORY_FAILURE)
add_definitions(-DCONFIG_CROSS_MEMORY_ATTACH)
add_definitions(-DCONFIG_MTRR)
add_definitions(-DCONFIG_ARCH_RANDOM)
add_definitions(-DCONFIG_X86_SMAP)
add_definitions(-DCONFIG_EFI)
add_definitions(-DCONFIG_HZ_1000)
add_definitions(-DCONFIG_HZ=1000)
add_definitions(-DCONFIG_SCHED_HRTICK)
add_definitions(-DCONFIG_KEXEC)
add_definitions(-DCONFIG_CRASH_DUMP)
add_definitions(-DCONFIG_RELOCATABLE)
add_definitions(-DCONFIG_HOTPLUG_CPU)
add_definitions(-DCONFIG_ARCH_ENABLE_MEMORY_HOTPLUG)
add_definitions(-DCONFIG_ARCH_HIBERNATION_HEADER)
add_definitions(-DCONFIG_HIBERNATE_CALLBACKS)
add_definitions(-DCONFIG_HIBERNATION)
add_definitions(-DCONFIG_PM_SLEEP)
add_definitions(-DCONFIG_PM_SLEEP_SMP)
add_definitions(-DCONFIG_PM)
add_definitions(-DCONFIG_ACPI)
add_definitions(-DCONFIG_ACPI_SLEEP)
add_definitions(-DCONFIG_ACPI_DOCK)
add_definitions(-DCONFIG_ACPI_I2C)
add_definitions(-DCONFIG_ACPI_HOTPLUG_CPU)
add_definitions(-DCONFIG_X86_PM_TIMER)
add_definitions(-DCONFIG_ACPI_CONTAINER)
add_definitions(-DCONFIG_CPU_FREQ)
add_definitions(-DCONFIG_CPU_FREQ_GOV_COMMON)
add_definitions(-DCONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE)
add_definitions(-DCONFIG_CPU_FREQ_GOV_USERSPACE)
add_definitions(-DCONFIG_CPU_IDLE)
add_definitions(-DCONFIG_CPU_IDLE_GOV_LADDER)
add_definitions(-DCONFIG_CPU_IDLE_GOV_MENU)
add_definitions(-DCONFIG_PCI)
add_definitions(-DCONFIG_PCI_DIRECT)
add_definitions(-DCONFIG_PCI_MMCONFIG)
add_definitions(-DCONFIG_PCI_DOMAINS)
add_definitions(-DCONFIG_PCIEPORTBUS)
add_definitions(-DCONFIG_PCIEAER)
add_definitions(-DCONFIG_PCIE_ECRC)
add_definitions(-DCONFIG_PCIEASPM)
add_definitions(-DCONFIG_PCIEASPM_PERFORMANCE)
add_definitions(-DCONFIG_ARCH_SUPPORTS_MSI)
add_definitions(-DCONFIG_PCI_MSI)
add_definitions(-DCONFIG_HT_IRQ)
add_definitions(-DCONFIG_PCI_ATS)
add_definitions(-DCONFIG_PCI_IOV)
add_definitions(-DCONFIG_PCI_IOAPIC)
add_definitions(-DCONFIG_PCI_LABEL)
add_definitions(-DCONFIG_ISA_DMA_API)
add_definitions(-DCONFIG_BINFMT_ELF)
add_definitions(-DCONFIG_COMPAT_BINFMT_ELF)
add_definitions(-DCONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE)
add_definitions(-DCONFIG_BINFMT_SCRIPT)
add_definitions(-DCONFIG_BINFMT_MISC)
add_definitions(-DCONFIG_COREDUMP)
add_definitions(-DCONFIG_IA32_EMULATION)
add_definitions(-DCONFIG_IA32_AOUT)
add_definitions(-DCONFIG_COMPAT)
add_definitions(-DCONFIG_COMPAT_FOR_U64_ALIGNMENT)
add_definitions(-DCONFIG_SYSVIPC_COMPAT)
add_definitions(-DCONFIG_KEYS_COMPAT)
add_definitions(-DCONFIG_HAVE_TEXT_POKE_SMP)
add_definitions(-DCONFIG_X86_DEV_DMA_OPS)
add_definitions(-DCONFIG_NET)
add_definitions(-DCONFIG_COMPAT_NETLINK_MESSAGES)
add_definitions(-DCONFIG_PACKET)
add_definitions(-DCONFIG_UNIX)
add_definitions(-DCONFIG_XFRM)
add_definitions(-DCONFIG_INET)
add_definitions(-DCONFIG_IP_MULTICAST)
add_definitions(-DCONFIG_IP_ADVANCED_ROUTER)
add_definitions(-DCONFIG_IP_MULTIPLE_TABLES)
add_definitions(-DCONFIG_IP_PNP)
add_definitions(-DCONFIG_IP_PNP_DHCP)
add_definitions(-DCONFIG_NET_IPGRE_BROADCAST)
add_definitions(-DCONFIG_SYN_COOKIES)
add_definitions(-DCONFIG_INET_LRO)
add_definitions(-DCONFIG_INET_DIAG)
add_definitions(-DCONFIG_INET_TCP_DIAG)
add_definitions(-DCONFIG_TCP_CONG_CUBIC)
add_definitions(-DCONFIG_IPV6_PRIVACY)
add_definitions(-DCONFIG_IPV6_ROUTER_PREF)
add_definitions(-DCONFIG_IPV6_OPTIMISTIC_DAD)
add_definitions(-DCONFIG_IPV6_SIT_6RD)
add_definitions(-DCONFIG_IPV6_NDISC_NODETYPE)
add_definitions(-DCONFIG_IPV6_MULTIPLE_TABLES)
add_definitions(-DCONFIG_IPV6_MROUTE)
add_definitions(-DCONFIG_IPV6_PIMSM_V2)
add_definitions(-DCONFIG_NETFILTER)
add_definitions(-DCONFIG_NETFILTER_ADVANCED)
add_definitions(-DCONFIG_BRIDGE_NETFILTER)
add_definitions(-DCONFIG_NF_CONNTRACK_MARK)
add_definitions(-DCONFIG_NF_CONNTRACK_PROCFS)
add_definitions(-DCONFIG_NF_NAT_NEEDED)
add_definitions(-DCONFIG_NF_CONNTRACK_PROC_COMPAT)
add_definitions(-DCONFIG_HAVE_NET_DSA)
add_definitions(-DCONFIG_NET_SCHED)
add_definitions(-DCONFIG_NET_CLS)
add_definitions(-DCONFIG_NET_SCH_FIFO)
add_definitions(-DCONFIG_DNS_RESOLVER)
add_definitions(-DCONFIG_RPS)
add_definitions(-DCONFIG_RFS_ACCEL)
add_definitions(-DCONFIG_XPS)
add_definitions(-DCONFIG_BQL)
add_definitions(-DCONFIG_FIB_RULES)
add_definitions(-DCONFIG_WIRELESS)
add_definitions(-DCONFIG_WIRELESS_EXT)
add_definitions(-DCONFIG_WEXT_CORE)
add_definitions(-DCONFIG_WEXT_PROC)
add_definitions(-DCONFIG_WEXT_PRIV)
add_definitions(-DCONFIG_HAVE_BPF_JIT)
add_definitions(-DCONFIG_DEVTMPFS)
add_definitions(-DCONFIG_STANDALONE)
add_definitions(-DCONFIG_PREVENT_FIRMWARE_BUILD)
add_definitions(-DCONFIG_FW_LOADER)
add_definitions(-DCONFIG_FW_LOADER_USER_HELPER)
add_definitions(-DCONFIG_GENERIC_CPU_VULNERABILITIES)
add_definitions(-DCONFIG_REGMAP)
add_definitions(-DCONFIG_REGMAP_I2C)
add_definitions(-DCONFIG_PNP)
add_definitions(-DCONFIG_PNPACPI)
add_definitions(-DCONFIG_BLK_DEV)
add_definitions(-DCONFIG_BLK_DEV_RAM)
add_definitions(-DCONFIG_ENCLOSURE_SERVICES)
add_definitions(-DCONFIG_HAVE_IDE)
add_definitions(-DCONFIG_SCSI_MOD)
add_definitions(-DCONFIG_RAID_ATTRS)
add_definitions(-DCONFIG_SCSI)
add_definitions(-DCONFIG_SCSI_DMA)
add_definitions(-DCONFIG_SCSI_PROC_FS)
add_definitions(-DCONFIG_BLK_DEV_SD)
add_definitions(-DCONFIG_SCSI_ENCLOSURE)
add_definitions(-DCONFIG_SCSI_MULTI_LUN)
add_definitions(-DCONFIG_SCSI_ISCSI_ATTRS)
add_definitions(-DCONFIG_SCSI_SAS_ATTRS)
add_definitions(-DCONFIG_SCSI_SAS_LIBSAS)
add_definitions(-DCONFIG_SCSI_SAS_ATA)
add_definitions(-DCONFIG_SCSI_SAS_HOST_SMP)
add_definitions(-DCONFIG_SCSI_LOWLEVEL)
add_definitions(-DCONFIG_SCSI_DH)
add_definitions(-DCONFIG_SCSI_DH_RDAC)
add_definitions(-DCONFIG_ATA)
add_definitions(-DCONFIG_ATA_VERBOSE_ERROR)
add_definitions(-DCONFIG_ATA_ACPI)
add_definitions(-DCONFIG_SATA_PMP)
add_definitions(-DCONFIG_SATA_AHCI)
add_definitions(-DCONFIG_SATA_SIL24)
add_definitions(-DCONFIG_ATA_SFF)
add_definitions(-DCONFIG_ATA_BMDMA)
add_definitions(-DCONFIG_SATA_MV)
add_definitions(-DCONFIG_MD)
add_definitions(-DCONFIG_BLK_DEV_MD)
add_definitions(-DCONFIG_MD_AUTODETECT)
add_definitions(-DCONFIG_MD_LINEAR)
add_definitions(-DCONFIG_MD_RAID0)
add_definitions(-DCONFIG_MD_RAID1)
add_definitions(-DCONFIG_MD_RAID10)
add_definitions(-DCONFIG_MD_RAID456)
add_definitions(-DCONFIG_BLK_DEV_DM_BUILTIN)
add_definitions(-DCONFIG_BLK_DEV_DM)
add_definitions(-DCONFIG_NETDEVICES)
add_definitions(-DCONFIG_NET_CORE)
add_definitions(-DCONFIG_ETHERNET)
add_definitions(-DCONFIG_NET_VENDOR_3COM)
add_definitions(-DCONFIG_NET_VENDOR_ADAPTEC)
add_definitions(-DCONFIG_NET_VENDOR_ALTEON)
add_definitions(-DCONFIG_NET_VENDOR_AMD)
add_definitions(-DCONFIG_NET_VENDOR_ATHEROS)
add_definitions(-DCONFIG_NET_CADENCE)
add_definitions(-DCONFIG_NET_VENDOR_BROADCOM)
add_definitions(-DCONFIG_BNX2X_SRIOV)
add_definitions(-DCONFIG_NET_VENDOR_BROCADE)
add_definitions(-DCONFIG_NET_VENDOR_CHELSIO)
add_definitions(-DCONFIG_NET_VENDOR_CISCO)
add_definitions(-DCONFIG_NET_VENDOR_DEC)
add_definitions(-DCONFIG_NET_VENDOR_DLINK)
add_definitions(-DCONFIG_NET_VENDOR_EMULEX)
add_definitions(-DCONFIG_NET_VENDOR_EXAR)
add_definitions(-DCONFIG_NET_VENDOR_HP)
add_definitions(-DCONFIG_NET_VENDOR_INTEL)
add_definitions(-DCONFIG_IGB_DCA)
add_definitions(-DCONFIG_NET_VENDOR_I825XX)
add_definitions(-DCONFIG_NET_VENDOR_MARVELL)
add_definitions(-DCONFIG_NET_VENDOR_MELLANOX)
add_definitions(-DCONFIG_NET_VENDOR_MICREL)
add_definitions(-DCONFIG_NET_VENDOR_MICROCHIP)
add_definitions(-DCONFIG_NET_VENDOR_MYRI)
add_definitions(-DCONFIG_NET_VENDOR_NATSEMI)
add_definitions(-DCONFIG_NET_VENDOR_8390)
add_definitions(-DCONFIG_NET_VENDOR_NVIDIA)
add_definitions(-DCONFIG_NET_VENDOR_OKI)
add_definitions(-DCONFIG_NET_VENDOR_QLOGIC)
add_definitions(-DCONFIG_NET_VENDOR_REALTEK)
add_definitions(-DCONFIG_NET_VENDOR_RDC)
add_definitions(-DCONFIG_NET_VENDOR_SEEQ)
add_definitions(-DCONFIG_NET_VENDOR_SILAN)
add_definitions(-DCONFIG_NET_VENDOR_SIS)
add_definitions(-DCONFIG_NET_VENDOR_SMSC)
add_definitions(-DCONFIG_NET_VENDOR_STMICRO)
add_definitions(-DCONFIG_NET_VENDOR_SUN)
add_definitions(-DCONFIG_NET_VENDOR_TEHUTI)
add_definitions(-DCONFIG_NET_VENDOR_TI)
add_definitions(-DCONFIG_NET_VENDOR_VIA)
add_definitions(-DCONFIG_NET_VENDOR_WIZNET)
add_definitions(-DCONFIG_WLAN)
add_definitions(-DCONFIG_INPUT)
add_definitions(-DCONFIG_SERIO)
add_definitions(-DCONFIG_SERIO_I8042)
add_definitions(-DCONFIG_SERIO_SERPORT)
add_definitions(-DCONFIG_SERIO_LIBPS2)
add_definitions(-DCONFIG_TTY)
add_definitions(-DCONFIG_VT)
add_definitions(-DCONFIG_CONSOLE_TRANSLATIONS)
add_definitions(-DCONFIG_VT_CONSOLE)
add_definitions(-DCONFIG_VT_CONSOLE_SLEEP)
add_definitions(-DCONFIG_HW_CONSOLE)
add_definitions(-DCONFIG_UNIX98_PTYS)
add_definitions(-DCONFIG_DEVPTS_MULTIPLE_INSTANCES)
add_definitions(-DCONFIG_LEGACY_PTYS)
add_definitions(-DCONFIG_SERIAL_NONSTANDARD)
add_definitions(-DCONFIG_DEVKMEM)
add_definitions(-DCONFIG_SERIAL_8250)
add_definitions(-DCONFIG_SERIAL_8250_DEPRECATED_OPTIONS)
add_definitions(-DCONFIG_SERIAL_8250_CONSOLE)
add_definitions(-DCONFIG_FIX_EARLYCON_MEM)
add_definitions(-DCONFIG_SERIAL_8250_DMA)
add_definitions(-DCONFIG_SERIAL_8250_PCI)
add_definitions(-DCONFIG_SERIAL_CORE)
add_definitions(-DCONFIG_SERIAL_CORE_CONSOLE)
add_definitions(-DCONFIG_DEVPORT)
add_definitions(-DCONFIG_I2C)
add_definitions(-DCONFIG_I2C_BOARDINFO)
add_definitions(-DCONFIG_I2C_COMPAT)
add_definitions(-DCONFIG_I2C_CHARDEV)
add_definitions(-DCONFIG_I2C_MUX)
add_definitions(-DCONFIG_I2C_HELPER_AUTO)
add_definitions(-DCONFIG_SPI)
add_definitions(-DCONFIG_SPI_MASTER)
add_definitions(-DCONFIG_SPI_BITBANG)
add_definitions(-DCONFIG_SPI_SPIDEV)
add_definitions(-DCONFIG_PPS)
add_definitions(-DCONFIG_PTP_1588_CLOCK)
add_definitions(-DCONFIG_ARCH_WANT_OPTIONAL_GPIOLIB)
add_definitions(-DCONFIG_GPIO_DEVRES)
add_definitions(-DCONFIG_HWMON)
add_definitions(-DCONFIG_HWMON_VID)
add_definitions(-DCONFIG_SENSORS_CORETEMP)
add_definitions(-DCONFIG_SENSORS_IT87)
add_definitions(-DCONFIG_THERMAL_HWMON)
add_definitions(-DCONFIG_THERMAL_DEFAULT_GOV_STEP_WISE)
add_definitions(-DCONFIG_THERMAL_GOV_STEP_WISE)
add_definitions(-DCONFIG_SSB_POSSIBLE)
add_definitions(-DCONFIG_SSB_SPROM)
add_definitions(-DCONFIG_SSB_PCIHOST_POSSIBLE)
add_definitions(-DCONFIG_SSB_PCIHOST)
add_definitions(-DCONFIG_SSB_DRIVER_PCICORE_POSSIBLE)
add_definitions(-DCONFIG_BCMA_POSSIBLE)
add_definitions(-DCONFIG_MFD_CORE)
add_definitions(-DCONFIG_LPC_ICH)
add_definitions(-DCONFIG_VGA_ARB)
add_definitions(-DCONFIG_BACKLIGHT_LCD_SUPPORT)
add_definitions(-DCONFIG_DUMMY_CONSOLE)
add_definitions(-DCONFIG_SOUND_OSS_CORE)
add_definitions(-DCONFIG_SOUND_OSS_CORE_PRECLAIM)
add_definitions(-DCONFIG_SND_OSSEMUL)
add_definitions(-DCONFIG_SND_SUPPORT_OLD_API)
add_definitions(-DCONFIG_SND_DMA_SGBUF)
add_definitions(-DCONFIG_SND_USB)
add_definitions(-DCONFIG_USB_HIDDEV)
add_definitions(-DCONFIG_USB_ARCH_HAS_OHCI)
add_definitions(-DCONFIG_USB_ARCH_HAS_EHCI)
add_definitions(-DCONFIG_USB_ARCH_HAS_XHCI)
add_definitions(-DCONFIG_USB_SUPPORT)
add_definitions(-DCONFIG_USB_ARCH_HAS_HCD)
add_definitions(-DCONFIG_USB_DEFAULT_PERSIST)
add_definitions(-DCONFIG_USB_ETRON_HCD_DEBUGGING)
add_definitions(-DCONFIG_USB_ETRON_HUB)
add_definitions(-DCONFIG_USB_EHCI_ROOT_HUB_TT)
add_definitions(-DCONFIG_USB_EHCI_TT_NEWSCHED)
add_definitions(-DCONFIG_NEW_LEDS)
add_definitions(-DCONFIG_LEDS_CLASS)
add_definitions(-DCONFIG_LEDS_TRIGGERS)
add_definitions(-DCONFIG_LEDS_TRIGGER_TIMER)
add_definitions(-DCONFIG_LEDS_TRIGGER_HEARTBEAT)
add_definitions(-DCONFIG_RTC_LIB)
add_definitions(-DCONFIG_RTC_CLASS)
add_definitions(-DCONFIG_RTC_HCTOSYS)
add_definitions(-DCONFIG_RTC_SYSTOHC)
add_definitions(-DCONFIG_RTC_INTF_SYSFS)
add_definitions(-DCONFIG_RTC_INTF_PROC)
add_definitions(-DCONFIG_RTC_INTF_DEV)
add_definitions(-DCONFIG_RTC_DRV_CMOS)
add_definitions(-DCONFIG_DMADEVICES)
add_definitions(-DCONFIG_DMA_ENGINE)
add_definitions(-DCONFIG_DMA_ACPI)
add_definitions(-DCONFIG_ASYNC_TX_DMA)
add_definitions(-DCONFIG_STAGING)
add_definitions(-DCONFIG_USBIP_DEBUG)
add_definitions(-DCONFIG_ZSMALLOC)
add_definitions(-DCONFIG_NET_VENDOR_SILICOM)
add_definitions(-DCONFIG_X86_PLATFORM_DEVICES)
add_definitions(-DCONFIG_CLKEVT_I8253)
add_definitions(-DCONFIG_CLKBLD_I8253)
add_definitions(-DCONFIG_IOMMU_API)
add_definitions(-DCONFIG_IOMMU_SUPPORT)
add_definitions(-DCONFIG_DMAR_TABLE)
add_definitions(-DCONFIG_INTEL_IOMMU)
add_definitions(-DCONFIG_INTEL_IOMMU_DEFAULT_ON)
add_definitions(-DCONFIG_INTEL_IOMMU_FLOPPY_WA)
add_definitions(-DCONFIG_IRQ_REMAP)
add_definitions(-DCONFIG_FIRMWARE_MEMMAP)
add_definitions(-DCONFIG_DMIID)
add_definitions(-DCONFIG_EFI_VARS)
add_definitions(-DCONFIG_EFI_VARS_PSTORE)
add_definitions(-DCONFIG_DCACHE_WORD_ACCESS)
add_definitions(-DCONFIG_EXT2_FS)
add_definitions(-DCONFIG_EXT2_FS_XATTR)
add_definitions(-DCONFIG_EXT3_FS)
add_definitions(-DCONFIG_EXT3_DEFAULTS_TO_ORDERED)
add_definitions(-DCONFIG_EXT3_FS_XATTR)
add_definitions(-DCONFIG_EXT4_FS)
add_definitions(-DCONFIG_JBD)
add_definitions(-DCONFIG_JBD2)
add_definitions(-DCONFIG_FS_MBCACHE)
add_definitions(-DCONFIG_FS_POSIX_ACL)
add_definitions(-DCONFIG_FILE_LOCKING)
add_definitions(-DCONFIG_FSNOTIFY)
add_definitions(-DCONFIG_DNOTIFY)
add_definitions(-DCONFIG_INOTIFY_USER)
add_definitions(-DCONFIG_QUOTA)
add_definitions(-DCONFIG_QUOTACTL)
add_definitions(-DCONFIG_QUOTACTL_COMPAT)
add_definitions(-DCONFIG_JOLIET)
add_definitions(-DCONFIG_ZISOFS)
add_definitions(-DCONFIG_UDF_NLS)
add_definitions(-DCONFIG_PROC_FS)
add_definitions(-DCONFIG_PROC_KCORE)
add_definitions(-DCONFIG_PROC_VMCORE)
add_definitions(-DCONFIG_PROC_SYSCTL)
add_definitions(-DCONFIG_PROC_PAGE_MONITOR)
add_definitions(-DCONFIG_SYSFS)
add_definitions(-DCONFIG_TMPFS)
add_definitions(-DCONFIG_CONFIGFS_FS)
add_definitions(-DCONFIG_MISC_FILESYSTEMS)
add_definitions(-DCONFIG_PSTORE)
add_definitions(-DCONFIG_AUFS_BRANCH_MAX_1023)
add_definitions(-DCONFIG_AUFS_SBILIST)
add_definitions(-DCONFIG_AUFS_FHSM)
add_definitions(-DCONFIG_AUFS_BR_RAMFS)
add_definitions(-DCONFIG_AUFS_BR_HFSPLUS)
add_definitions(-DCONFIG_AUFS_BDEV_LOOP)
add_definitions(-DCONFIG_NETWORK_FILESYSTEMS)
add_definitions(-DCONFIG_NFS_FS)
add_definitions(-DCONFIG_NFS_V2)
add_definitions(-DCONFIG_NFS_V3)
add_definitions(-DCONFIG_NFS_V4)
add_definitions(-DCONFIG_NFS_USE_KERNEL_DNS)
add_definitions(-DCONFIG_NFS_DEBUG)
add_definitions(-DCONFIG_NFSD_V3)
add_definitions(-DCONFIG_NFSD_V4)
add_definitions(-DCONFIG_LOCKD)
add_definitions(-DCONFIG_LOCKD_V4)
add_definitions(-DCONFIG_NFS_COMMON)
add_definitions(-DCONFIG_SUNRPC)
add_definitions(-DCONFIG_SUNRPC_GSS)
add_definitions(-DCONFIG_SUNRPC_DEBUG)
add_definitions(-DCONFIG_CIFS_DEBUG)
add_definitions(-DCONFIG_CIFS_SMB2)
add_definitions(-DCONFIG_NLS)
add_definitions(-DCONFIG_NLS_UTF8)
add_definitions(-DCONFIG_TRACE_IRQFLAGS_SUPPORT)
add_definitions(-DCONFIG_PRINTK_TIME)
add_definitions(-DCONFIG_ENABLE_WARN_DEPRECATED)
add_definitions(-DCONFIG_ENABLE_MUST_CHECK)
add_definitions(-DCONFIG_MAGIC_SYSRQ)
add_definitions(-DCONFIG_DEBUG_FS)
add_definitions(-DCONFIG_DEBUG_KERNEL)
add_definitions(-DCONFIG_LOCKUP_DETECTOR)
add_definitions(-DCONFIG_HARDLOCKUP_DETECTOR)
add_definitions(-DCONFIG_BOOTPARAM_HARDLOCKUP_PANIC)
add_definitions(-DCONFIG_DETECT_HUNG_TASK)
add_definitions(-DCONFIG_SCHED_DEBUG)
add_definitions(-DCONFIG_SCHEDSTATS)
add_definitions(-DCONFIG_HAVE_DEBUG_KMEMLEAK)
add_definitions(-DCONFIG_STACKTRACE)
add_definitions(-DCONFIG_DEBUG_BUGVERBOSE)
add_definitions(-DCONFIG_ARCH_WANT_FRAME_POINTERS)
add_definitions(-DCONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS)
add_definitions(-DCONFIG_USER_STACKTRACE_SUPPORT)
add_definitions(-DCONFIG_HAVE_FUNCTION_TRACER)
add_definitions(-DCONFIG_HAVE_FUNCTION_GRAPH_TRACER)
add_definitions(-DCONFIG_HAVE_FUNCTION_GRAPH_FP_TEST)
add_definitions(-DCONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST)
add_definitions(-DCONFIG_HAVE_DYNAMIC_FTRACE)
add_definitions(-DCONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS)
add_definitions(-DCONFIG_HAVE_FTRACE_MCOUNT_RECORD)
add_definitions(-DCONFIG_HAVE_SYSCALL_TRACEPOINTS)
add_definitions(-DCONFIG_HAVE_FENTRY)
add_definitions(-DCONFIG_HAVE_C_RECORDMCOUNT)
add_definitions(-DCONFIG_TRACING_SUPPORT)
add_definitions(-DCONFIG_DYNAMIC_DEBUG) # bromolow only
add_definitions(-DCONFIG_HAVE_ARCH_KGDB)
add_definitions(-DCONFIG_HAVE_ARCH_KMEMCHECK)
add_definitions(-DCONFIG_X86_VERBOSE_BOOTUP)
add_definitions(-DCONFIG_EARLY_PRINTK)
add_definitions(-DCONFIG_DEBUG_RODATA)
add_definitions(-DCONFIG_DEBUG_RODATA_TEST)
add_definitions(-DCONFIG_HAVE_MMIOTRACE_SUPPORT)
add_definitions(-DCONFIG_IO_DELAY_0X80)
add_definitions(-DCONFIG_OPTIMIZE_INLINING)
add_definitions(-DCONFIG_KEYS)
add_definitions(-DCONFIG_KEYS_DEBUG_PROC_KEYS)
add_definitions(-DCONFIG_SECURITY)
add_definitions(-DCONFIG_SECURITYFS)
add_definitions(-DCONFIG_SECURITY_NETWORK)
add_definitions(-DCONFIG_KAISER)
add_definitions(-DCONFIG_SECURITY_PATH)
add_definitions(-DCONFIG_SECURITY_APPARMOR)
add_definitions(-DCONFIG_SECURITY_APPARMOR_COMPAT_24)
add_definitions(-DCONFIG_DEFAULT_SECURITY_APPARMOR)
add_definitions(-DCONFIG_XOR_BLOCKS)
add_definitions(-DCONFIG_ASYNC_CORE)
add_definitions(-DCONFIG_ASYNC_MEMCPY)
add_definitions(-DCONFIG_ASYNC_XOR)
add_definitions(-DCONFIG_ASYNC_PQ)
add_definitions(-DCONFIG_ASYNC_RAID6_RECOV)
add_definitions(-DCONFIG_CRYPTO)
add_definitions(-DCONFIG_CRYPTO_ALGAPI)
add_definitions(-DCONFIG_CRYPTO_ALGAPI2)
add_definitions(-DCONFIG_CRYPTO_AEAD2)
add_definitions(-DCONFIG_CRYPTO_BLKCIPHER2)
add_definitions(-DCONFIG_CRYPTO_HASH)
add_definitions(-DCONFIG_CRYPTO_HASH2)
add_definitions(-DCONFIG_CRYPTO_RNG2)
add_definitions(-DCONFIG_CRYPTO_PCOMP2)
add_definitions(-DCONFIG_CRYPTO_MANAGER2)
add_definitions(-DCONFIG_CRYPTO_MANAGER_DISABLE_TESTS)
add_definitions(-DCONFIG_CRYPTO_WORKQUEUE)
add_definitions(-DCONFIG_CRYPTO_CRC32C)
add_definitions(-DCONFIG_CRYPTO_CRCT10DIF)
add_definitions(-DCONFIG_CRYPTO_SHA512)
add_definitions(-DCONFIG_CRYPTO_AES)
add_definitions(-DCONFIG_ASYMMETRIC_KEY_TYPE)
add_definitions(-DCONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE)
add_definitions(-DCONFIG_PUBLIC_KEY_ALGO_RSA)
add_definitions(-DCONFIG_X509_CERTIFICATE_PARSER)
add_definitions(-DCONFIG_HAVE_KVM)
add_definitions(-DCONFIG_HAVE_KVM_IRQCHIP)
add_definitions(-DCONFIG_HAVE_KVM_IRQ_ROUTING)
add_definitions(-DCONFIG_HAVE_KVM_EVENTFD)
add_definitions(-DCONFIG_KVM_APIC_ARCHITECTURE)
add_definitions(-DCONFIG_KVM_MMIO)
add_definitions(-DCONFIG_KVM_ASYNC_PF)
add_definitions(-DCONFIG_HAVE_KVM_MSI)
add_definitions(-DCONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT)
add_definitions(-DCONFIG_VIRTUALIZATION)
add_definitions(-DCONFIG_KVM_DEVICE_ASSIGNMENT)
add_definitions(-DCONFIG_RAID6_PQ)
add_definitions(-DCONFIG_BITREVERSE)
add_definitions(-DCONFIG_GENERIC_STRNCPY_FROM_USER)
add_definitions(-DCONFIG_GENERIC_STRNLEN_USER)
add_definitions(-DCONFIG_GENERIC_FIND_FIRST_BIT)
add_definitions(-DCONFIG_GENERIC_PCI_IOMAP)
add_definitions(-DCONFIG_GENERIC_IOMAP)
add_definitions(-DCONFIG_GENERIC_IO)
add_definitions(-DCONFIG_CRC16)
add_definitions(-DCONFIG_CRC_T10DIF)
add_definitions(-DCONFIG_CRC32)
add_definitions(-DCONFIG_CRC32_SLICEBY8)
add_definitions(-DCONFIG_ZLIB_INFLATE)
add_definitions(-DCONFIG_LZO_COMPRESS)
add_definitions(-DCONFIG_LZO_DECOMPRESS)
add_definitions(-DCONFIG_DECOMPRESS_GZIP)
add_definitions(-DCONFIG_DECOMPRESS_LZMA)
add_definitions(-DCONFIG_GENERIC_ALLOCATOR)
add_definitions(-DCONFIG_HAS_IOMEM)
add_definitions(-DCONFIG_HAS_IOPORT)
add_definitions(-DCONFIG_HAS_DMA)
add_definitions(-DCONFIG_CHECK_SIGNATURE)
add_definitions(-DCONFIG_CPU_RMAP)
add_definitions(-DCONFIG_DQL)
add_definitions(-DCONFIG_NLATTR)
add_definitions(-DCONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE)
add_definitions(-DCONFIG_AVERAGE)
add_definitions(-DCONFIG_CLZ_TAB)
add_definitions(-DCONFIG_MPILIB)
add_definitions(-DCONFIG_OID_REGISTRY)
add_definitions(-DCONFIG_UCS2_STRING)
add_definitions(-DCONFIG_SERIAL_8250_NR_UARTS=4)
add_definitions(-DCONFIG_SYNO_BOOT_SATA_DOM) # only some platforms support that, notably 3615xs while 918+ doesn't

# SATA DOM-related configs (only models with it, e.g. 3615xs but not 918+)
add_definitions(-DCONFIG_SYNO_SATA_DOM_VENDOR=\"DUMMY_VENDOR\")
add_definitions(-DCONFIG_SYNO_SATA_DOM_MODEL=\"DUMMY_MODEL\")

add_executable(redpill
        redpill_main.c redpill_main.h internal/call_protected.c internal/call_protected.h common.h config/cmdline_delegate.c config/cmdline_delegate.h shim/boot_device_shim.c shim/boot_device_shim.h internal/stealth.c internal/stealth.h config/runtime_config.c config/runtime_config.h test.c shim/bios_shim.c shim/bios_shim.h internal/override/override_symbol.c internal/override/override_symbol.h shim/bios/bios_shims_collection.c shim/bios/bios_shims_collection.h shim/block_fw_update_shim.c shim/block_fw_update_shim.h internal/intercept_execve.c internal/intercept_execve.h shim/disable_exectutables.c shim/disable_exectutables.h debug/debug_execve.c debug/debug_execve.h compat/string_compat.c compat/string_compat.h internal/stealth/sanitize_cmdline.c internal/stealth/sanitize_cmdline.h internal/virtual_pci.c internal/virtual_pci.h shim/pci_shim.c shim/pci_shim.h shim/bios/rtc_proxy.c shim/bios/rtc_proxy.h shim/bios/rtc_proxy.c shim/bios/rtc_proxy.h internal/uart/virtual_uart.c internal/uart/virtual_uart.h shim/uart_fixer.c shim/uart_fixer.h config/uart_defs.h debug/debug_vuart.h internal/uart/vuart_virtual_irq.c internal/uart/vuart_virtual_irq.h internal/uart/vuart_internal.h shim/boot_dev/usb_boot_shim.c shim/boot_dev/usb_boot_shim.h shim/boot_dev/native_sata_boot_shim.c shim/boot_dev/native_sata_boot_shim.h internal/uart/uart_swapper.c internal/uart/uart_swapper.h shim/pmu_shim.c shim/pmu_shim.h internal/intercept_driver_register.c internal/intercept_driver_register.h shim/shim_base.h shim/storage/sata_port_shim.c shim/storage/sata_port_shim.h internal/scsi/scsi_notifier.c internal/scsi/scsi_notifier.h internal/scsi/scsi_notifier.c internal/scsi/scsi_notifier.h internal/notifier_base.h internal/scsi/scsi_toolbox.c internal/scsi/scsi_toolbox.h internal/scsi/scsi_notifier_list.c internal/scsi/scsi_notifier_list.h shim/storage/smart_shim.c shim/storage/smart_shim.h internal/helper/memory_helper.c internal/helper/memory_helper.h internal/scsi/hdparam.h internal/scsi/scsiparam.h internal/helper/symbol_helper.c internal/helper/symbol_helper.h compat/toolkit/drivers/usb/storage/usb.h shim/boot_dev/fake_sata_boot_shim.c shim/boot_dev/fake_sata_boot_shim.h shim/boot_dev/boot_shim_base.c shim/boot_dev/boot_shim_base.h config/cmdline_opts.h internal/ioscheduler_fixer.c internal/ioscheduler_fixer.h shim/bios/bios_hwcap_shim.c shim/bios/bios_hwcap_shim.h internal/helper/math_helper.c internal/helper/math_helper.h config/hwmon_defs.h config/platform_types.h shim/bios/bios_hwmon_shim.c shim/bios/bios_hwmon_shim.h config/vpci_types.h internal/override/override_syscall.c internal/override/override_syscall.h)
